The Internet and the World Wide Web allow companies and organizations to offer services in a document, such as a digital form of web applications, to businesses and individuals who may access and utilize these services with a personal computer and a web browser. Making such documents and particularly applications available over a network is typically referred to as Software as a Service (“SaaS”). Some examples of applications that may be provided in SaaS form are electronic mail, instant messaging, productivity tools, customer relationship management, enterprise resource planning, human resources applications, blogs, social networking sites, etc.
This model has inherent security risks. User data, such as messages, customer records, and company financials, are stored on remote servers beyond the control of the provider of the user data. Storing personal or corporate information on remote servers exposes the data owner to many risks, and implies that the information's owner must trust the entity that owns the computer systems hosting the information and the network connecting the information owner and the hosting systems.
For instance, commonly known accounting software solutions require their customers to post accounting information to be stored on the solution provider's servers. In such systems, the customer must entrust the solution provider with the accounting information, thereby relinquishing a certain measure of control over the privacy and integrity thereof.
In certain software applications, a variety of encryption schemes are used to render data unintelligible to anyone who does not possess the appropriate decryption methods or keys. For example, application providers may enable and/or require an information owner to encrypt data in transit between a client and a host using secure socket layer (SSL) encryption or another method. This prevents an internet service provider (ISP) and other potential eavesdroppers from seeing the data itself during transit. The data is accordingly decrypted upon arrival to the hosted application, and the hosted application vendor may view and manipulate the owner's unencrypted data. However, this method exposes the sensitive data at the hosted application vendor.
U.S. Pat. No. 7,165,175, describes an apparatus and method for selectively encrypting portions of data sent over a network between client and server. The apparatus includes parsing means for separating a first portion of the data from a second portion of the data, encrypting means for encrypting only of the first portion of the data, and combining means for combining the encrypted first portion of the data with the second portion of the data. The apparatus further includes decrypting means installed at the client for decrypting the encrypted portion of the data.
PCT Patent Publication Number WO 01/047205, discloses enhanced computer network encryption using downloaded software objects. This application describes a method and a system for securing highly sensitive financial and other data contained in transmissions over a public network, such as the World Wide Web, linking a web server computer to a remote client computer. By determining a desired (usually strong) specific standard of encryption for all sensitive communications between web server and client, and “pushing” the capability to encrypt to such standard to the client by automatically downloading from the web server to the client, and executing within the client's web browser, software objects to perform encryption/decryption tasks pursuant to the chosen standard, strong encryption is readily assured even if the client did not originally have such strong encryption capabilities.
One problem with the application of these approaches to hosted SaaS applications is that such applications require that operating information, e.g., data made available for manipulation over the network, be unencrypted in order to allow manipulation of the information by the application provider, thereby exposing the data to the application provider, and otherwise rendering the data vulnerable to security concerns during manipulation.